// 导入模块
import nunjucks from "nunjucks";
import url from "url";

// 创建函数（查询所有学生）
async function students(ctx, next) {
  // 获取页面文件的绝对路径
  const filePath = url.fileURLToPath(new URL("../views/students.html", import.meta.url).href);

  // 使用模版引擎渲染页面内容
  // 模版引擎配置（无缓存、监听）
  const env = nunjucks.configure({ noCache: true, watch: true });
  // 渲染模版
  const content = env.render(filePath, {})
  // 把内容 响应给浏览器
  ctx.body = content;
}

// 创建函数（用 id 查询 一个 学生）
async function studentById(ctx, next) {
  console.log(`查询的学生信息如下：${ctx.params.id}`);
}

// 创建函数（添加 一个 学生）
async function insertStudent(ctx, next) {
  console.log(`新增了学生：${JSON.stringify(ctx.request.body)}}`);
}

// 创建函数（修改 一个 学生信息）
async function updateStudent(ctx, next) {
  console.log(`修改了学生：${JSON.stringify(ctx.request.body)}`);
}

// 创建函数（删除 一个 学生）
async function deleteStudent(ctx, next) {
  console.log(`删除了学生：${ctx.params.id}`);
}

// 暴露 api 函数接口
export const obj = {
  "get /student": students,
  "get /student/:id": studentById,
  "post /student": insertStudent,
  "put /student": updateStudent,
  "delete /student:id": deleteStudent,
};
